#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QLabel>
#include <QProgressBar>
#include <QPushButton>

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    // 创建一个状态栏：存在就获取，不存在就创建
    QStatusBar* statusBar = this->statusBar();
    // 如果状态栏没有被创建，这样的设置是必要的
    // 如果状态栏已经在窗口中存在了，这样的设置其实意义不大，但是没有副作用
    this->setStatusBar(statusBar);
    // 可以给状态栏显示一个临时的消息，使用 showMessage 设置参数 timeout，经过timeout时间后自动消失
    // 如果没有传入timeout，则是永久消息
    // statusBar->showMessage("这是一个消息", 3000);
    // 在状态栏中还可以添加其他的控件
    // 添加 label
    QLabel* label = new QLabel("这是一段文本");
    statusBar->addWidget(label);
    // 还可以在 addWidget 时设置伸缩系数，表示占用的控件比例
//    QLabel* label1 = new QLabel("这是一段文本");
//    QLabel* label2 = new QLabel("这是一段另一段文本");
    // 1 : 2 的比例显示
//    statusBar->addWidget(label1, 1);
//    statusBar->addWidget(label2, 2);
    // 添加一个进度条
    QProgressBar* progressBar = new QProgressBar();
    progressBar->setRange(0,100);
    progressBar->setValue(50);
    statusBar->addWidget(progressBar);
    // 添加一个按钮，添加在最后面
    QPushButton* button = new QPushButton("按钮");
    statusBar->addPermanentWidget(button);
}

MainWindow::~MainWindow()
{
    delete ui;
}

